package com.itbour.service.material;

import java.util.List;
import java.util.Map;

import com.itbour.com.page.Page;
import com.itbour.dto.template.DocTypeDto;
import com.itbour.dto.template.TemplateInfoDto;
import com.itbour.dto.template.TmplPageInfoDto;
import com.itbour.dto.tg.KeywordInfoDto;


/**
*
* copyright   itbour team 2015
* @author     xc
*
*/
public interface TmplService {

	
	/**
	 * @param countKey
	 *            查询该表所有记录行的SQL语句ID
	 * @param sqlKey
	 *            需要查询记录的SQL语句ID
	 * @param param
	 *            传递给查询语句的参数
	 * @param pageNo
	 *            需要查询的实际页
	 * @param pageSize
	 *            每页记录行数
	 * @return page对象
	 */
	public Page pageQuery(Map<String,Object> param, Integer pageNo, Integer pageSize);
	public Page pageQueryTmplPrice(Map<String,Object> param, Integer pageNo, Integer pageSize);
	
	public List<TemplateInfoDto> selectTmplInfo(Map<String,Object> param);
	public List<TemplateInfoDto> selectMstTmplLst(Map<String,Object> param);
	public List<TmplPageInfoDto> selectTmplPage(Map<String,Object> param);
	public TmplPageInfoDto chkTmplPageInfo(Map<String,Object> param);
	
	public void deleteTmplInfo(String delIds);
	public void deleteTmplPage(Map<String,Object> param);
	
	public void addTmplDoc(TemplateInfoDto docInfo);
	
	public void addTmplPage(TmplPageInfoDto pageInfo);
	
	public TemplateInfoDto getLatestTmplDoc();
	
	public void updateTmplDocById(Map<String,Object> param);
	public void updateTmplPageById(Map<String,Object> param);
	
	public List<String> getTmplTypeIds(String docId);
	public void updateTmplTypeInfo(String docId, String typeIds);
	
	public List<String> findTmplIdsByTypeIds(Map<String,Object> param);
	
	public List<DocTypeDto> getDocTypeForCombo(Map<String,Object> param);
	
	// 检索关键词
	public List<KeywordInfoDto> selectDocKeywordInfo(Map<String,Object> param);
	
	// 模版价格增删改
	public void deleteTmplPriceInfo(Map<String,Object> param);
	public void insertTmplPrice(Map<String,Object> param);
	public void updateTmplPriceById(Map<String,Object> param);
	
	public Page getTmplUserDocInfo(Map<String, Object> parm,Integer pageNo,Integer pageSize);
}
